package com.example.seckilldemo.controller;

import com.example.seckilldemo.rabbitmq.MQSender;
import com.example.seckilldemo.service.IUserService;
import com.example.seckilldemo.vo.LoginVo;
import com.example.seckilldemo.vo.RespBean;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;

/**
 * @Author Wangbaba
 * @Date 2024/3/17 22:57
 * @Version 1.0
 */
@Controller
@RequestMapping()
@Slf4j
public class LoginController {

    @Autowired
    private IUserService userService;
    @Autowired
    private MQSender mqSender;

    @GetMapping("/login")
    public String toLogin(){
        return "login";
    }

    @PostMapping("/login")
    @ResponseBody
    public RespBean login(@Valid LoginVo loginVo, HttpServletRequest request, HttpServletResponse response){
       return userService.login(loginVo,request,response);
    }

//    /**
//     * 测试MQ接口
//     */
//    @RequestMapping("/mq")
//    @ResponseBody
//    public void  mq(){
//        mqSender.send("hello,world");
//    }
//    /**
//     * 测试MQ接口:fanout模式
//     */
//    @RequestMapping("/fanout")
//    @ResponseBody
//    public void  fanout(){
//        mqSender.send("hello,world01");
//    }
//    /**
//     * 测试MQ接口:direct模式
//     */
//    @RequestMapping("/direct01")
//    @ResponseBody
//    public void  direct01(){
//        mqSender.send01("hello,Red");
//    }
//    @RequestMapping("/direct02")
//    @ResponseBody
//    public void  direct02(){
//        mqSender.send02("hello,green");
//    }
//    /**
//     * 测试MQ接口:topic模式
//     */
//    @RequestMapping("/topic01")
//    @ResponseBody
//    public void  topic01(){
//        mqSender.send03("hello,Red");
//    }
//    @RequestMapping("/topic02")
//    @ResponseBody
//    public void  topic02(){
//        mqSender.send04("hello,green");
//    }
//    /**
//     * 测试MQ接口:header模式
//     */
//    @RequestMapping("/header01")
//    @ResponseBody
//    public void  header01(){
//        mqSender.send05("hello,header01");
//    }
//    @RequestMapping("/header02")
//    @ResponseBody
//    public void  header02(){
//        mqSender.send06("hello,header02");
//    }
}
